using System;
namespace Jukebox
{
    interface Command
    {
        void Execute(State state);
    }
    
    public class StartCommand : Command
    {
        public StartCommand() {}
        public void Execute(State state)
        {
            state.Start();
        }
    }
    
    public class StopCommand : Command
    {
        public StopCommand() {}
        public void Execute(State state)
        {
            state.Stop();
        }
    }
    
    public class AddSongCommand : Command
    {
        private string mSong;
        public AddSongCommand(string song)
        {
            this.mSong = song;
        }
        public void Execute(State state)
        {
            state.AddSong(mSong);
        }
    }
}

